package net.tv90.bfmccore.game.commander;

import net.tv90.bfmccore.event.PlayerCountryChangeEvent;
import net.tv90.bfmccore.game.GameBase;
import org.bitterorange.flansmodslain.models.PlayerSlainEvent;
import org.bukkit.event.player.PlayerQuitEvent;

public interface ICommanderSystem {
    /**
     * 每帧触发
     *
     * @param gameBase
     */
    void tick(GameBase gameBase);

    /**
     * 玩家被击杀时触发
     *
     * @param e
     */
    void onPlayerSlain(PlayerSlainEvent e);

    /**
     * 玩家阵营变更时触发
     *
     * @param e
     */
    void onPlayerCountryChange(PlayerCountryChangeEvent e);

    /**
     * 玩家退出时触发
     *
     * @param e
     */
    void onPlayerQuit(PlayerQuitEvent e);
}
